package com.net.xpay.core.service;

import com.net.xpay.common.domain.User;
import com.net.xpay.core.domain.PayTransBatch;

/**
 * 2020/5/8 15:24

 * 批次打款
 */
public interface PayTransBatchService {

    /**
     * 发起批次打款
     * @param user 用户
     * @param id
     * @param alipayNickName 支付方的支付宝账号 可为空
     * @param payMethod 支付方式 0.pc支付 1.移动二维码支付 2.移动链接支付
     * @return 支付地址
     */
    PayTransBatch batchPayTrans(User user, Long id, String alipayNickName, String signBizNo, String returnUrl, Integer payMethod);

    PayTransBatch closePayTransBatch(User user, Long id);

    void updatePayTransBatch(Long userId, Long summaryId);

    void calBenefit(PayTransBatch batch, User user, long refund);
}
